home *** CD-ROM | disk | FTP | other *** search
/ MacWorld 1999 January - Disc 2 / Macworld (1999-01) (Disk 2).dmg / Serious Demos / Symbolic Composer 4.2 / Environment / System / CADAR / Lengths / length-repeat-var < prev    next >
Text File  |  1998-10-22  |  970b  |  34 lines

  1. length-repeat-var
  2. min max length-list &key (seed nil)
  3.  
  4.  
  5. like length-repeat-l but makes random choices inside min
  6. and max.
  7. with big difference between min and max also subdivides
  8. into subgroups so instead of even division like
  9. 1/2 -> 1/16 1/16 1/16 1/16 it can be
  10. 1/2 -> 1/16 1/16 1/24 1/24 1/24.
  11.  
  12. for a more controllable version see also sub-divide-rhythm
  13. and sub-divide-with-melody,
  14.  
  15.  
  16. if :seed is a non nil value you will get the same result
  17. every time and with nil (default) you will get different 
  18. versions every time. 
  19. non nil seeds should be inside 0.0001 and 0.9999
  20.  
  21.  
  22. (length-repeat-var 2 3 '(1/2 1/4 1/2 1/8 1/8))
  23. -> varies
  24.  
  25. (length-repeat-var 3 5 '(1/2 1/4 1/2 1/8 1/8) :seed 0.02)
  26. ->((1/6 1/6 1/6) (1/16 1/16 1/16 1/16) (1/8 1/8 1/12 1/12 1/12) (1/24 1/24 1/24) (1/32 1/32 1/32 1/32))
  27.  
  28.  
  29. just use flatten if you want one list. 
  30.  
  31. (flatten 
  32. (length-repeat-var 2 3 '(1/2 1/4 1/2 1/8 1/8) :seed 0.31))
  33. ->(1/4 1/4 1/12 1/12 1/12 1/6 1/6 1/6 1/16 1/16 1/24 1/24 1/24)
  34.